To date, current systems use various path-planning approaches, often derived from network theory. These approaches search large portions of an entire path space during processing for obstacle avoidance. In essence, the processing required for these approaches (e.g., Dijkstra's method, A* path planning, and/or the like) increases according to a total area of the “cost map,” or region of interest. In particular, the processing increases in proportion to the square of the increase of the linear dimensions of the region of interest. As a result, the processing required to implement these approaches quickly exceeds the ability of various applications, such as small, portable systems, to readily accommodate, especially while performing other tasks of interest to an operator of portable system (e.g., an unmanned vehicle).
The increase in processing is partially due to the assumption that way finding and path planning are proactive processes, which must be exhaustively performed by the onboard system of the portable system. Many such approaches calculate cost values for each “cell” in this cost map which are dependent on evaluating the distance, or cost, to the portable system to reach each one, often without considering more obvious heuristics as “am I now backing up rather than moving forward.” This leads to many approaches which proactively check and determine path costs through cost map cells which would actually cause the vehicle to back up unnecessarily, even though in the end that course is not selected.